1. Field of the Invention
The present invention relates to computer systems, and in particular relates to computer systems with multiple operating systems, which allows rapid switching between operating systems, thus consuming less power.
2. Description of the Related Art
For conventional computer systems (e.g. computer systems with Microsoft Windows operating system), power management for reducing power consumption can be achieved by using the standby states defined by the “Advanced Configuration and Power Interface (ACPI)”. There are six states S0 to S5 defined by the ACPI. State S0 indicates that the computer system is at working state. In the standby state S1, the CPU in the computer system is not working, and in the standby state S2, the CPU in the computer system shutdowns. State S3 is a standby state with a short resuming time (e.g. 5 seconds or shorter), wherein a computer system can be recovered to the working state (e.g. state S0). The standby state S4 is also regarded as a “suspend to disk” state, and the computer system has low power consumption and long resuming time (e.g. 20 seconds or longer) in the standby state S4. The aforementioned standby states S1 to S4 save power in different levels, and state S5 is a shutdown state.
On the other hand, current computer systems or hand-held devices may be installed with two operating systems, such as a Windows operating system and an Android system, according to user demands. To switch between the two installed operating systems, an appropriate switching mechanism is needed. There are two kinds of popular operating system switching mechanisms. The first switching mechanism is “rebooting”, which switches from one operating system to another operating system. For example, several operating systems are installed on a personal computer, such as a Windows Vista, Windows 7, and Linux operating system, and a user can switch between the installed operating systems by rebooting. However, the rebooting process requires the whole computer system to be in a shutdown state (e.g. S5) from the working state (e.g. S0), and then re-enter the working state (e.g. S0), such that it takes a very long time to switch between operating systems. The second switching mechanism uses virtualization technology. However, to switch between two operating systems by virtualization, the computer system must support two operating systems concurrently. Here, the original operating system is still at a working state (e.g. S0) when switching to another operating system. A user does not know the operating system behind is still operating with proper design. Also, more power is consumed as two operating systems must be executed by a processor; especially for devices which have slower processors, like mobile devices. Therefore, a computer system which is capable of switching between two operating systems rapidly without consuming a lot of power is highly demanded.